package com.atguigu.testabstract;

/**
 * @author admin
 */
public class Main {

    public static void main(String[] args) {
        // 创建一个 Dog 对象，并将其赋值给 Animal 类型的变量 animal1
        Animal animal1 = new Dog();
        // 创建一个 Cat 对象，并将其赋值给 Animal 类型的变量 animal2
        Animal animal2 = new Cat();

        // 调用 Animal 类型的变量 animal1 的 makeSound 方法，输出 "Dog is barking..."
        animal1.makeSound();
        // 调用 Animal 类型的变量 animal2 的 makeSound 方法，输出 "Cat is meowing..."
        animal2.makeSound();
        // 调用 Animal 类型的变量 animal1 的 eat 方法，输出 "Animal is eating..."
        animal1.eat();
        // 调用 Animal 类型的变量 animal2 的 eat 方法，输出 "Animal is eating..."
        animal2.eat();

        Animal a = new Animal() {
            @Override
            public void makeSound() {
                System.out.println("123");
            }
        };
        a.makeSound();
    }
}
